/*
 * Copyright (C) 2017-2021
 * All rights reserved, Designed By
 * Copyright authorization contact 18814114118
 */
package com.shop.cereshop.business.service.bond;

import com.baomidou.mybatisplus.extension.service.IService;
import com.shop.cereshop.business.page.bond.ShopRechargeVO;
import com.shop.cereshop.business.param.bond.ShopRechargeDTO;
import com.shop.cereshop.commons.domain.bond.CereShopBondRecharge;

import javax.validation.Valid;
import java.util.List;

public interface CereShopBondRechargeService extends IService<CereShopBondRecharge> {
    List<CereShopBondRecharge> getRechargeList(Long shopId, Integer page, Integer pageSize);
    // 基础服务接口，可根据业务需要扩展

    ShopRechargeVO createRechargeOrder(@Valid ShopRechargeDTO param);

    CereShopBondRecharge getRechargeDetail(String rechargeNo);

    boolean cancelRechargeOrder(String rechargeNo, Long shopId);

    boolean handleRechargeSuccess(String rechargeNo, String thirdPartyOrderNo);

    boolean handleRechargeFail(String rechargeNo, String failReason);

    CereShopBondRecharge getDetailById(Long rechargeId);
}